Una vez se han generado la vista en python con los datos de accidentes desde 2008 hasta 2015, procedo a analizar los datos relativos a los mismos.
En primer lugar incluyo las libreria que se utilizaran en el analisis, fijamos el directorio de trabajo, y hago una promera revision de los datos.
library(knitr)
library(dummies)
## dummies-1.5.6 provided by Decision Patterns
library(corrplot)
library(plyr)
library(dtplyr)
library(data.table)
library(ggplot2)
library(gridExtra)
library(sqldf)
## Loading required package: gsubfn
## Loading required package: proto
## Loading required package: RSQLite
library(plotly)
##
## Attaching package: 'plotly'
## The following object is masked from 'package:ggplot2':
##
## last_plot
## The following objects are masked from 'package:plyr':
##
## arrange, mutate, rename, summarise
## The following object is masked from 'package:stats':
##
## filter
## The following object is masked from 'package:graphics':
##
## layout
library(factoextra)
library(Matrix)
library(partykit)
## Loading required package: grid
require(markdown) # required for md to html
## Loading required package: markdown
#knit('Analisis_accidentes.Rmd', 'Analisis_accidentes.md') # creates md file
#install.packages('factoextra',dependencies = TRUE, type="source")
#Directorio de trabajo
setwd("~/Documents/MASTER_DATA_SCIENCE/tfm/cleaned")
accidentes=read.csv2("view_accvict_08_15.csv",
stringsAsFactors = FALSE,
sep = ';',
encoding = 'UTF-8',
colClasses=c("ID_ACCIDENTE"="character"))
#transfomo en data table
setDT(accidentes)
#Revisión basica del dataset
dim(accidentes)
## [1] 711902 21
str(accidentes)
## Classes 'data.table' and 'data.frame': 711902 obs. of 21 variables:
## $ ID_ACCIDENTE : chr "2008480000372" "2008250021218" "2008430024095" "2008430022973" ...
## $ ANIO : int 2008 2008 2008 2008 2008 2008 2008 2008 2008 2008 ...
## $ MES : chr "ABRIL" "MARZO" "OCTUBRE" "ABRIL" ...
## $ HORA : int 7 14 12 18 19 14 20 19 2 13 ...
## $ DIASEMANA : chr "VIERNES" "DOMINGO" "DOMINGO" "MARTES" ...
## $ PROVINCIA : chr "Bizkaia" "Lleida" "Tarragona" "Tarragona" ...
## $ COMUNIDAD_AUTONOMA : chr "Pais_vasco" "Catalunia" "Catalunia" "Catalunia" ...
## $ TOT_VICTIMAS : int 4 1 1 1 1 3 1 2 2 1 ...
## $ TOT_MUERTOS : int 0 0 0 0 0 1 0 0 0 0 ...
## $ TOT_HERIDOS_GRAVES : int 0 1 0 0 1 2 0 0 0 0 ...
## $ TOT_HERIDOS_LEVES : int 4 0 1 1 0 0 1 2 2 1 ...
## $ TOT_VEHICULOS_IMPLICADOS: int 1 1 1 2 1 1 2 3 1 1 ...
## $ ZONA : chr "CARRETERA" "CARRETERA" "CARRETERA" "CARRETERA" ...
## $ ZONA_AGRUPADA : chr "VIAS INTERURBANAS" "VIAS INTERURBANAS" "VIAS INTERURBANAS" "VIAS INTERURBANAS" ...
## $ RED_CARRETERA : chr "TITULARIDAD_PROVINCIAL" "TITULARIDAD_AUTONOMICA" "TITULARIDAD_MUNICIPAL" "TITULARIDAD_MUNICIPAL" ...
## $ TIPO_VIA : chr "AUTOVIA" "CONVENCIONAL" "CONVENCIONAL" "CONVENCIONAL" ...
## $ SUPERFICIE_CALZADA : chr "UMBRIA" "SECA_Y_LIMPIA" "SECA_Y_LIMPIA" "SECA_Y_LIMPIA" ...
## $ LUMINOSIDAD : chr "NOCHE_ILUMINACION_SUFICIENTE" "PLENO_DIA" "PLENO_DIA" "PLENO_DIA" ...
## $ FACTORES_ATMOSFERICOS : chr "BUEN_TIEMPO" "OTRO" "BUEN_TIEMPO" "BUEN_TIEMPO" ...
## $ VISIBILIDAD_RESTRINGIDA : int 8 8 0 0 8 8 0 8 0 0 ...
## $ TIPO_ACCIDENTE : chr "Otro_tipo_de_accidente" "Colision_vehic_obs_en_calzada_(Valla_de_defensa)" "Salida_via_drcha_sin_colision_(Otra)" "Colision_vehic_en_marcha_(Alcance)" ...
## - attr(*, ".internal.selfref")=<externalptr>
summary(accidentes)
## ID_ACCIDENTE ANIO MES HORA
## Length:711902 Min. :2008 Length:711902 Min. : 0.00
## Class :character 1st Qu.:2009 Class :character 1st Qu.:10.00
## Mode :character Median :2012 Mode :character Median :14.00
## Mean :2012 Mean :13.61
## 3rd Qu.:2014 3rd Qu.:18.00
## Max. :2015 Max. :23.00
## DIASEMANA PROVINCIA COMUNIDAD_AUTONOMA TOT_VICTIMAS
## Length:711902 Length:711902 Length:711902 Min. : 1.00
## Class :character Class :character Class :character 1st Qu.: 1.00
## Mode :character Mode :character Mode :character Median : 1.00
## Mean : 1.42
## 3rd Qu.: 2.00
## Max. :63.00
## TOT_MUERTOS TOT_HERIDOS_GRAVES TOT_HERIDOS_LEVES
## Min. : 0.0000 Min. : 0.0000 Min. : 0.000
## 1st Qu.: 0.0000 1st Qu.: 0.0000 1st Qu.: 1.000
## Median : 0.0000 Median : 0.0000 Median : 1.000
## Mean : 0.0212 Mean : 0.1342 Mean : 1.265
## 3rd Qu.: 0.0000 3rd Qu.: 0.0000 3rd Qu.: 1.000
## Max. :14.0000 Max. :43.0000 Max. :52.000
## TOT_VEHICULOS_IMPLICADOS ZONA ZONA_AGRUPADA
## Min. : 0.000 Length:711902 Length:711902
## 1st Qu.: 1.000 Class :character Class :character
## Median : 2.000 Mode :character Mode :character
## Mean : 1.741
## 3rd Qu.: 2.000
## Max. :91.000
## RED_CARRETERA TIPO_VIA SUPERFICIE_CALZADA
## Length:711902 Length:711902 Length:711902
## Class :character Class :character Class :character
## Mode :character Mode :character Mode :character
##
##
##
## LUMINOSIDAD FACTORES_ATMOSFERICOS VISIBILIDAD_RESTRINGIDA
## Length:711902 Length:711902 Min. :0.000
## Class :character Class :character 1st Qu.:1.000
## Mode :character Mode :character Median :1.000
## Mean :2.549
## 3rd Qu.:3.000
## Max. :8.000
## TIPO_ACCIDENTE
## Length:711902
## Class :character
## Mode :character
##
##
##
head(accidentes)
## ID_ACCIDENTE ANIO MES HORA DIASEMANA PROVINCIA
## 1: 2008480000372 2008 ABRIL 7 VIERNES Bizkaia
## 2: 2008250021218 2008 MARZO 14 DOMINGO Lleida
## 3: 2008430024095 2008 OCTUBRE 12 DOMINGO Tarragona
## 4: 2008430022973 2008 ABRIL 18 MARTES Tarragona
## 5: 2008250021457 2008 MAYO 19 VIERNES Lleida
## 6: 2008250022083 2008 DICIEMBRE 14 LUNES Lleida
## COMUNIDAD_AUTONOMA TOT_VICTIMAS TOT_MUERTOS TOT_HERIDOS_GRAVES
## 1: Pais_vasco 4 0 0
## 2: Catalunia 1 0 1
## 3: Catalunia 1 0 0
## 4: Catalunia 1 0 0
## 5: Catalunia 1 0 1
## 6: Catalunia 3 1 2
## TOT_HERIDOS_LEVES TOT_VEHICULOS_IMPLICADOS ZONA ZONA_AGRUPADA
## 1: 4 1 CARRETERA VIAS INTERURBANAS
## 2: 0 1 CARRETERA VIAS INTERURBANAS
## 3: 1 1 CARRETERA VIAS INTERURBANAS
## 4: 1 2 CARRETERA VIAS INTERURBANAS
## 5: 0 1 CARRETERA VIAS INTERURBANAS
## 6: 0 1 CARRETERA VIAS INTERURBANAS
## RED_CARRETERA TIPO_VIA SUPERFICIE_CALZADA
## 1: TITULARIDAD_PROVINCIAL AUTOVIA UMBRIA
## 2: TITULARIDAD_AUTONOMICA CONVENCIONAL SECA_Y_LIMPIA
## 3: TITULARIDAD_MUNICIPAL CONVENCIONAL SECA_Y_LIMPIA
## 4: TITULARIDAD_MUNICIPAL CONVENCIONAL SECA_Y_LIMPIA
## 5: TITULARIDAD_MUNICIPAL OTRA OTRO TIPO
## 6: TITULARIDAD_AUTONOMICA CONVENCIONAL SECA_Y_LIMPIA
## LUMINOSIDAD FACTORES_ATMOSFERICOS
## 1: NOCHE_ILUMINACION_SUFICIENTE BUEN_TIEMPO
## 2: PLENO_DIA OTRO
## 3: PLENO_DIA BUEN_TIEMPO
## 4: PLENO_DIA BUEN_TIEMPO
## 5: PLENO_DIA OTRO
## 6: PLENO_DIA BUEN_TIEMPO
## VISIBILIDAD_RESTRINGIDA
## 1: 8
## 2: 8
## 3: 0
## 4: 0
## 5: 8
## 6: 8
## TIPO_ACCIDENTE
## 1: Otro_tipo_de_accidente
## 2: Colision_vehic_obs_en_calzada_(Valla_de_defensa)
## 3: Salida_via_drcha_sin_colision_(Otra)
## 4: Colision_vehic_en_marcha_(Alcance)
## 5: Salida_via_drcha_sin_colision_(Con_vuelco)
## 6: Salida_via_drcha_sin_colision_(En_llano)
tail(accidentes)
## ID_ACCIDENTE ANIO MES HORA DIASEMANA PROVINCIA
## 1: 2016990000444 2015 DICIEMBRE 12 JUEVES Madrid
## 2: 2016990000448 2015 DICIEMBRE 13 MARTES Madrid
## 3: 2016990000873 2015 DICIEMBRE 7 JUEVES Madrid
## 4: 2016990000875 2015 DICIEMBRE 11 JUEVES Madrid
## 5: 2016990000876 2015 DICIEMBRE 13 MARTES Madrid
## 6: 2016990001660 2015 NOVIEMBRE 15 LUNES Madrid
## COMUNIDAD_AUTONOMA TOT_VICTIMAS TOT_MUERTOS TOT_HERIDOS_GRAVES
## 1: Madrid 1 0 0
## 2: Madrid 1 0 0
## 3: Madrid 1 0 0
## 4: Madrid 2 0 0
## 5: Madrid 1 0 0
## 6: Madrid 1 0 0
## TOT_HERIDOS_LEVES TOT_VEHICULOS_IMPLICADOS ZONA ZONA_AGRUPADA
## 1: 1 1 ZONA URBANA VIAS URBANAS
## 2: 1 1 ZONA URBANA VIAS URBANAS
## 3: 1 2 ZONA URBANA VIAS URBANAS
## 4: 2 2 ZONA URBANA VIAS URBANAS
## 5: 1 1 ZONA URBANA VIAS URBANAS
## 6: 1 2 ZONA URBANA VIAS URBANAS
## RED_CARRETERA TIPO_VIA SUPERFICIE_CALZADA
## 1: TITULARIDAD_MUNICIPAL RAMAL_DE_ENLACE MOJADA
## 2: TITULARIDAD_MUNICIPAL RAMAL_DE_ENLACE SECA_Y_LIMPIA
## 3: TITULARIDAD_MUNICIPAL RAMAL_DE_ENLACE MOJADA
## 4: TITULARIDAD_MUNICIPAL RAMAL_DE_ENLACE MOJADA
## 5: TITULARIDAD_MUNICIPAL RAMAL_DE_ENLACE SECA_Y_LIMPIA
## 6: TITULARIDAD_MUNICIPAL RAMAL_DE_ENLACE SECA_Y_LIMPIA
## LUMINOSIDAD FACTORES_ATMOSFERICOS
## 1: PLENO_DIA LLOVIZNANDO
## 2: PLENO_DIA BUEN_TIEMPO
## 3: NOCHE_ILUMINACION_SUFICIENTE LLOVIZNANDO
## 4: PLENO_DIA LLOVIZNANDO
## 5: PLENO_DIA BUEN_TIEMPO
## 6: PLENO_DIA BUEN_TIEMPO
## VISIBILIDAD_RESTRINGIDA TIPO_ACCIDENTE
## 1: 1 20
## 2: 1 7
## 3: 1 2
## 4: 1 2
## 5: 1 7
## 6: 1 2
Primeramente hago una clasificacion de los accidentes ocurridos en los años 2008-2015, clasificando por tipo de via.
clasif_acc<-sqldf("select ANIO,
ZONA_AGRUPADA,
count (distinct ID_ACCIDENTE) as NUM_ACC,
sum(TOT_MUERTOS) as MUERTES,
sum(TOT_HERIDOS_GRAVES) as HERIDOS_GRAVES,
sum(TOT_HERIDOS_LEVES) as HERIDOS_LEVES
from accidentes
group by ANIO,ZONA_AGRUPADA
order by ANIO")
clasif_acc
## ANIO ZONA_AGRUPADA NUM_ACC MUERTES HERIDOS_GRAVES HERIDOS_LEVES
## 1 2008 VIAS INTERURBANAS 43831 2180 11363 56222
## 2 2008 VIAS URBANAS 49330 476 5569 58237
## 3 2009 VIAS INTERURBANAS 40789 1903 8975 54180
## 4 2009 VIAS URBANAS 47462 433 5326 56863
## 5 2010 VIAS INTERURBANAS 39174 1729 7841 52247
## 6 2010 VIAS URBANAS 46329 417 4486 56103
## 7 2011 VIAS INTERURBANAS 35878 1484 6944 47692
## 8 2011 VIAS URBANAS 47149 353 4626 56588
## 9 2012 VIAS INTERURBANAS 35425 1301 6178 47943
## 10 2012 VIAS URBANAS 47690 362 4486 57523
## 11 2013 VIAS INTERURBANAS 37297 1134 5278 51320
## 12 2013 VIAS URBANAS 52222 355 4993 63320
## 13 2014 VIAS INTERURBANAS 35147 1132 4948 48694
## 14 2014 VIAS URBANAS 56423 355 4822 68369
## 15 2015 VIAS INTERURBANAS 34558 1131 4858 48039
## 16 2015 VIAS URBANAS 63198 347 4842 76925
Comienzo a analizar para todos los años (2008-2015) las variables numericas relacionadas con las victimas:
#Agrupacion por año y tipologia de victima
acc<-sqldf("select ANIO,
sum(TOT_VICTIMAS) as VICTIMAS_TOTALES,
sum(TOT_MUERTOS) as MUERTOS,
sum(TOT_HERIDOS_GRAVES) as H_GRAVES,
sum(TOT_HERIDOS_LEVES) as H_LEVES
from accidentes group by ANIO
order by ANIO")
#Convierto a formato largo
acc_anio<-melt(acc,id=c("ANIO"))
colnames(acc_anio)<-c('ANIO','TIPO','VALUE')
acc_anio=sqldf("select * from acc_anio order by ANIO,TIPO")
Visualizando los datos de las tipologia por año, se parecian dos grupos y tendencias opuestas.
#cc_anio$VALUE=scale(acc_anio$VALUE)
p1<-ggplot(acc_anio, aes(x=ANIO, y=VALUE, colour=TIPO, group=TIPO)) +
geom_line() +
ggtitle("EVOLUCION POR TIPOLOGIA TODOS LOS AÑOS")+
theme(plot.title = element_text(hjust = 0.5))+
ylab("NUMERO_TOTAL")+
ylab("NUMERO")
p2<-ggplot(acc_anio, aes(x=ANIO, y=VALUE, colour=TIPO, group=TIPO)) +
geom_line() +
ggtitle("EVOLUCION POR TIPOLOGIA TODOS LOS AÑOS")+
theme(plot.title = element_text(hjust = 0.5))+
ylab("NUMERO_TOTAL")+
ylab("NUMERO_escala LOG")+ scale_y_log10()
grid.arrange(p1,p2, ncol=1)
p3<-ggplot(sqldf("select * from acc_anio where TIPO=='MUERTOS' or TIPO=='H_GRAVES'" ), aes(x=ANIO, y=VALUE, colour=TIPO, group=TIPO)) +
geom_line() +
ggtitle("GRP1_EVO_MUERTOS_Y_HERIDOS GRAVES")+
theme(plot.title = element_text(hjust = 0.5))+
ylab("NUMERO_TOTAL")+
ylab("NUMERO")
p4<-ggplot(sqldf("select * from acc_anio where TIPO<>'MUERTOS' and TIPO<>'H_GRAVES'" ), aes(x=ANIO, y=VALUE, colour=TIPO, group=TIPO)) +
geom_line() +
ggtitle("GRP2_EVO_DE_VICTIMAS_Y_HERIDOS_LEVES")+
theme(plot.title = element_text(hjust = 0.5))+
ylab("NUMERO_TOTAL")+
ylab("NUMERO")
# ggplot(acc_anio, aes(ANIO, MUERTOS)) + geom_line()
# + xlab("ANIO") + ylab("VICTIMAS")
grid.arrange(p3,p4, ncol=1)
Se observa que el numero de victimas en tiene una tendencia positiva, esta tendencia va pareja al incremento de heridos leves.
En cambio vemos que la tendencia de muertes y heridos graves es negativa.
En 8 años se han incrementado las victimas, pero se ha reducido el numero de muertes.
Para comprobar esta posible depenencia, creo una matriz de correlacion entre las distintas variables.
-En primer lugar incluyendo todos los años desde 2008 al 2015.
0.91 Entre heridos leves y victimas. El numero de heridos leves está casi a la misma proporcion que de accidentados.
0.13 Entre heridos graves y victimas.
0.07 Entre muertos y victimas. El aumento en el nuevo de victimas no tiene demasiado impacto en el aumento de numero de muertos.
-0.11 Entre heridos leves y muertos.
-0.26 Entre heridos graves y heridos leves.
Logicamente, si aumenta el numero de muertos o heridos graves, diminuye el numero de heridos leves, y viceversa.
acc_subset <- subset(accidentes,select=c(TOT_VICTIMAS,TOT_MUERTOS,TOT_HERIDOS_GRAVES,
TOT_HERIDOS_LEVES))
#creo la matriz de correlacion
acc_subset_cor<- cor(acc_subset)
#nombre en ejes
colnames(acc_subset_cor)<-c("VICTMS","MUERTOS","H_GRVS","H_LVS")
rownames(acc_subset_cor)<-c("VICTMS","MUERTOS","H_GRVS","H_LVS")
#paleta de colores
col <- colorRampPalette(c("#BB4444", "#EE9988", "#FFFFFF", "#77AADD", "#4477AA"))
#ploteo
corrplot(acc_subset_cor, method="color",
hclust.method="median",
addCoef.col = "black",
col=col(200),
order ="hclust",
title ="MATRIZ DE CORRELACIÓN 2008-2015",
number.cex=.75,
tl.cex = .75,
mar = c(1,0,1,0),type="lower")
Genero matrices de correlacion para cada uno de los años
Se mantienen las correlacion entre las variable antes comentadas. Se puede apreciar en las correlaciones entre el numero de victimas y el resto de variables:
Con el numero de muertos va disminuyendo desde 2008 a 2015, salvo incremento en 2014.
Con el numero de heridos leves, se mantiene cuasi lineal.
Con el numero de heridos graves, disminute desde 2008 a 2015, salvo incremento en 2014.
colnames(accidentes)
## [1] "ID_ACCIDENTE" "ANIO"
## [3] "MES" "HORA"
## [5] "DIASEMANA" "PROVINCIA"
## [7] "COMUNIDAD_AUTONOMA" "TOT_VICTIMAS"
## [9] "TOT_MUERTOS" "TOT_HERIDOS_GRAVES"
## [11] "TOT_HERIDOS_LEVES" "TOT_VEHICULOS_IMPLICADOS"
## [13] "ZONA" "ZONA_AGRUPADA"
## [15] "RED_CARRETERA" "TIPO_VIA"
## [17] "SUPERFICIE_CALZADA" "LUMINOSIDAD"
## [19] "FACTORES_ATMOSFERICOS" "VISIBILIDAD_RESTRINGIDA"
## [21] "TIPO_ACCIDENTE"
acc_subset<- subset(accidentes,select=c(TOT_VICTIMAS,TOT_MUERTOS,TOT_HERIDOS_GRAVES,
TOT_HERIDOS_LEVES))
#Quiero plotear los añosa 2x2
par(mfrow=c(2,2))
col <- colorRampPalette(c("#BB4444", "#EE9988", "#FFFFFF", "#77AADD", "#4477AA"))
years=.(2008,2009,2010,2011,2012,2013,2014,2015)
for (year in names(years)) {
acc_subset <- subset(accidentes,(ANIO==year),
select=c(TOT_VICTIMAS,TOT_MUERTOS,TOT_HERIDOS_GRAVES,
TOT_HERIDOS_LEVES))
acc_subset_cor<- cor(acc_subset)
colnames(acc_subset_cor)<-c("VICTMS","MUERTOS","H_GRVS","H_LVS")
rownames(acc_subset_cor)<-c("VICTMS","MUERTOS","H_GRVS","H_LVS")
corrplot(acc_subset_cor, method="color",
hclust.method="median",
addCoef.col = "black",
col=col(200),
order ="hclust",
title =year,
number.cex=.75,
tl.cex = .75,
mar = c(1,0,1,0),type="lower")
}
#### REGRESIONES Precedo a analizar mediante regresion lineal la realcion antes comentada entre heridos leves y victimas totales
reg<-lm(VICTIMAS_TOTALES~H_LEVES,data = acc)
plot(VICTIMAS_TOTALES~H_LEVES,data = acc)
summary(reg)
##
## Call:
## lm(formula = VICTIMAS_TOTALES ~ H_LEVES, data = acc)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2176.3 -1935.1 -1336.4 850.4 5943.6
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.458e+04 1.971e+04 1.247 0.25893
## H_LEVES 9.045e-01 1.749e-01 5.172 0.00207 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 3133 on 6 degrees of freedom
## Multiple R-squared: 0.8168, Adjusted R-squared: 0.7863
## F-statistic: 26.75 on 1 and 6 DF, p-value: 0.00207
anova(reg)
## Analysis of Variance Table
##
## Response: VICTIMAS_TOTALES
## Df Sum Sq Mean Sq F value Pr(>F)
## H_LEVES 1 262591858 262591858 26.751 0.00207 **
## Residuals 6 58896004 9816001
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
El R cuadrado nos indica que aproximadamente el 81,68% de la variabilidad en la variable VICTIMAS_TOTALES es explicada por los HERIDOS_LEVES.
Analizando la varianza, teniendo un alfa de 0,4 y siendo p=0.00207. Podemos decir que existe relacion lineal.
Voy a comprobar el % de cada tipo de herido sobre el total y representarlo mediante histograma.
Hay un total de 1.010.892 victimas en 8 años, de las cuales:
HERIDOS_GRAVES son 900.265, que representan un 89,06% sobre el total.
TIPO TOTAL_VICTIMAS PORC MUERTOS 15092 1.49 H_GRAVES 95535 9.45 H_LEVES 900265 89.06
#Agrupacion por tipo desde 2008 a 2015
tipos_victimas<- ddply(subset(acc_anio, TIPO!="VICTIMAS_TOTALES"), .(TIPO),
summarize,TOTAL_VICTIMAS= sum(VALUE))
#Total de victimas desde 2008 a 2015
total_victimas<-sqldf("select sum(VALUE) as TOTAL from acc_anio where tipo=='VICTIMAS_TOTALES'")
#Calculo en % de cada tipologia sobre el total
tipos_victimas$PORC=round((tipos_victimas$TOTAL_VICTIMAS/total_victimas$TOTAL)*100,2)
#Histograma 1
ggplot(tipos_victimas,
aes(x = TIPO, y = TOTAL_VICTIMAS,fill=TIPO)) +
ggtitle("TOTAL DE VICTIMAS Y % SOBRE EL TOTAL 2008-2015")+
theme(plot.title = element_text(hjust = 0.5))+
geom_bar(stat="identity") +
labs(x = "TIPO_VICTIMA", y = "NUM_VICTIMAS - % SOBRE TOTAL", fill = "TIPOLOGIAS")+
scale_y_continuous(limits = c(0,1000000))+
geom_text(data=tipos_victimas, aes(label=format(PORC, digits=3), y=PORC),
colour="black",size=3.5,vjust=-8)+
geom_text(data=tipos_victimas, aes(label=format(TOTAL_VICTIMAS, digits=6), y=TOTAL_VICTIMAS),
colour="black",size=3.5,vjust=-2)
A continuacion vemos en 3D, el detalle de la evolucion por año, y peso de cada tipologia sobre el total de accidentes.
#Genero la tabla por año y tipo
tipos_victimas_anio<- ddply(subset(acc_anio, TIPO!="VICTIMAS_TOTALES"), .(ANIO,TIPO),
summarize,TOTAL_VICTIMAS= sum(VALUE))
#Calculo en % de cada tipo sobre el total
tipos_victimas_anio$PORC=round((tipos_victimas_anio$TOTAL_VICTIMAS/total_victimas$TOTAL)*100,2)
plot_ly(tipos_victimas_anio, x = ~ANIO, y = ~TIPO, z = ~PORC,
marker = list(color = ~TOTAL_VICTIMAS,
colorscale = c('#FFE1A1', '#683531'),
showscale = TRUE)) %>%
add_markers() %>%
layout(scene = list(xaxis = list(title = 'ANIO'),
yaxis = list(title = 'TIPO'),
zaxis = list(title = '% S.TOTAL')),
annotations = list(
x = 1.13,
y = 1.05,
text = 'VICTIMAS',
xref = 'TIPOLOGIA',
yref = '% S.TOTAL',
showarrow = FALSE
))
Por meses: Vemos de nuevo que los años con mayor siniestralidad son 2015,2014 y 2008. El mas con mayor siniestrlidad y victimas es Julio. En 2015 se aprecia un notable incremento en los meses de Mayo a Julio. 2011 y 2012 son los años con numero de accidentes y victimas.
Por dias: El dia con mayor siniestralidad y mayor numero de victimas, es el Viernes, y con menor, el Domingo. 2015 es el año que tiene el top de ambos indicadores 5 de 7 dias.
#Agrupacion por año y tipologia de victima
acc_anio_mes<-sqldf("select ANIO,
MES,
count(distinct ID_ACCIDENTE) as NUM_ACC,
sum(TOT_VICTIMAS) as VICTIMAS
from accidentes
group by ANIO,MES
order by ANIO")
acc_anio_dia<-sqldf("select ANIO,
DIASEMANA as DIA,
count(distinct ID_ACCIDENTE) as NUM_ACC,
sum(TOT_VICTIMAS) as VICTIMAS
from accidentes
group by ANIO,DIASEMANA
order by ANIO")
#Convierto a formato largo
#acc_anio_ccaa<-melt(acc_anio_ccaa,id=c("ANIO","MES","DIASEMANA","NUM_ACC"))
#colnames(acc_anio_ccaa)<-c('ANIO','MES','NUM_ACC','TIPOLOGIA','VICTIMAS')
#acc_anio_ccaa=sqldf("select * from acc_anio_ccaa order by ANIO,CC_AA,TIPO")
#Convierto a factores y ordeno los meses
acc_anio_mes$ANIO <- as.factor(acc_anio_mes$ANIO)
acc_anio_mes$MES <- as.factor(acc_anio_mes$MES)
acc_anio_mes$MES <- ordered(acc_anio_mes$MES,
c("ENERO","FEBRERO","MARZO","ABRIL","MAYO",
"JUNIO","JULIO", "AGOSTO", "SEPTIEMBRE",
"OCTUBRE", "NOVIEMBRE", "DICIEMBRE"))
acc_anio_dia$ANIO <- as.factor(acc_anio_dia$ANIO)
acc_anio_dia$DIA <- as.factor(acc_anio_dia$DIA)
acc_anio_dia$DIA <- ordered(acc_anio_dia$DIA,
c("LUNES","MARTES","MIERCOLES","JUEVES","VIERNES",
"SABADO","DOMINGO" ))
#Scatter
# plot_ly(data = acc_anio_ccaa, x = ~MES, y = ~NUM_ACC, color = ~ANIO,type = "scatter",
# text = ~paste("ANIO: ",ANIO, '<br>ACCIDENTES:', NUM_ACC))
#Histograma
p1=plot_ly(data = acc_anio_mes, x = ~MES, y = ~NUM_ACC, color = ~ANIO,
text = ~paste("ANIO: ",ANIO, '<br>ACCIDENTES:', NUM_ACC)) %>%
layout(title = "ACCIDENTES POR MESES 2008-2015")
p2=plot_ly(data = acc_anio_mes, x = ~MES, y = ~VICTIMAS, color = ~ANIO,
text = ~paste("ANIO: ",ANIO, '<br>ACCIDENTES:', VICTIMAS)) %>%
layout(title = "VICTIMAS POR MES 2008-2015")
p3=plot_ly(data = acc_anio_dia, x = ~DIA, y = ~NUM_ACC, color = ~ANIO,
text = ~paste("ANIO: ",ANIO, '<br>ACCIDENTES:', NUM_ACC)) %>%
layout(title = "ACCIDENTES POR DIAS 2008-2015")
p4=plot_ly(data = acc_anio_dia, x = ~DIA, y = ~VICTIMAS, color = ~ANIO,
text = ~paste("ANIO: ",ANIO, '<br>ACCIDENTES:', VICTIMAS)) %>%
layout(title = "VICTIMAS POR DIAS 2008-2015")
p1
## No trace type specified:
## Based on info supplied, a 'bar' trace seems appropriate.
## Read more about this trace type -> https://plot.ly/r/reference/#bar
p2
## No trace type specified:
## Based on info supplied, a 'bar' trace seems appropriate.
## Read more about this trace type -> https://plot.ly/r/reference/#bar
p3
## No trace type specified:
## Based on info supplied, a 'bar' trace seems appropriate.
## Read more about this trace type -> https://plot.ly/r/reference/#bar
p4
## No trace type specified:
## Based on info supplied, a 'bar' trace seems appropriate.
## Read more about this trace type -> https://plot.ly/r/reference/#bar
En cuanto al numero de accidentes y victimas por CCAA, Cataluña es la CCAA con mas accidentes, seguidas de Madrid y Andalucia.
En cuanto a menos siniestralidad se encuentran Navarra, Ceuta y Melilla Y la Rioja.
#Agrupacion por año y tipologia de victima
acc_anio_ccaa<-sqldf("select ANIO,
COMUNIDAD_AUTONOMA as CCAA,
count(distinct ID_ACCIDENTE) as NUM_ACC,
sum(TOT_VICTIMAS) as VICTIMAS
from accidentes
group by ANIO,COMUNIDAD_AUTONOMA
order by NUM_ACC desc")
#Convierto a formato largo
#acc_anio_ccaa<-melt(acc_anio_ccaa,id=c("ANIO","MES","DIASEMANA","NUM_ACC"))
#colnames(acc_anio_ccaa)<-c('ANIO','MES','NUM_ACC','TIPOLOGIA','VICTIMAS')
#acc_anio_ccaa=sqldf("select * from acc_anio_ccaa order by ANIO,CC_AA,TIPO")
#Convierto a factores y ordeno los meses
acc_anio_ccaa$ANIO <- as.factor(acc_anio_ccaa$ANIO)
acc_anio_ccaa$CCAA <- as.factor(acc_anio_ccaa$CCAA)
#Scatter
# plot_ly(data = acc_anio_ccaa, x = ~MES, y = ~NUM_ACC, color = ~ANIO,type = "scatter",
# text = ~paste("ANIO: ",ANIO, '<br>ACCIDENTES:', NUM_ACC))
#Histograma
p1<-plot_ly(data = acc_anio_ccaa, x = ~ANIO, y = ~NUM_ACC, color = ~CCAA,type = "scatter",
text = ~paste("CCAA: ",CCAA, '<br>ACCIDENTES:', NUM_ACC))
#%>% layout(title = "ACCIDENTES POR CCAA 2008-2015")
p2<-plot_ly(data = acc_anio_ccaa, x = ~ANIO, y = ~VICTIMAS, color = ~CCAA,type = "scatter",
text = ~paste("CCAA: ",CCAA, '<br>ACCIDENTES:', VICTIMAS))
#%>% layout(title = "VICTIMAS POR CCAA 2008-2015")
p<-subplot(p1, p2,margin = 0.05)
## No scatter mode specifed:
## Setting the mode to markers
## Read more about this attribute -> https://plot.ly/r/reference/#scatter-mode
## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors
## No scatter mode specifed:
## Setting the mode to markers
## Read more about this attribute -> https://plot.ly/r/reference/#scatter-mode
## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors
p %>% layout(annotations = list(
list(x = 0.05 , y = 1.05, text = "ACCIDENTES POR CCAA", showarrow = F, xref='paper', yref='paper'),
list(x =0.95, y = 1.05, text = "VICTIMAS POR CCAA", showarrow = F, xref='paper', yref='paper'))
)
A continuacion, examino 3 variables importantes a la hora de producirse una accidente:
Se puede ver que el groso de accidentes se produce con un asfalto seco y limpio, a pleno dia y con buen tiempo.
#Agrupacion por año y tipologia de victima
acc_anio_calzada<-sqldf("select ANIO,
SUPERFICIE_CALZADA as CALZADA,
count (SUPERFICIE_CALZADA) as NUM_CALZADA
from accidentes
group by ANIO,SUPERFICIE_CALZADA
order by ANIO")
acc_anio_luminosidad<-sqldf("select ANIO,
LUMINOSIDAD,
count (LUMINOSIDAD) as NUM_LUMINOSIDAD
from accidentes
group by ANIO,LUMINOSIDAD
order by ANIO")
acc_anio_clima<-sqldf("select ANIO,
FACTORES_ATMOSFERICOS as CLIMA,
count (FACTORES_ATMOSFERICOS) as NUM_CLIMA
from accidentes
group by ANIO,FACTORES_ATMOSFERICOS
order by ANIO")
acc_anio_calzada$ANIO <- as.factor(acc_anio_calzada$ANIO)
acc_anio_luminosidad$ANIO <- as.factor(acc_anio_luminosidad$ANIO)
acc_anio_clima$ANIO <- as.factor(acc_anio_clima$ANIO)
#Histograma tipo de calzada
p1=plot_ly(data = acc_anio_calzada, x = ~CALZADA, y = ~NUM_CALZADA, color = ~ANIO,
text = ~paste("ANIO: ",ANIO, '<br>ACCIDENTES:', NUM_CALZADA)) %>%
layout(title = "ACCIDENTES TIPO DE CALZADA 2008-2015")
#Histograma factores lumincos
p2=plot_ly(data = acc_anio_luminosidad, x = ~LUMINOSIDAD, y = ~NUM_LUMINOSIDAD, color = ~ANIO,
text = ~paste("ANIO: ",ANIO, '<br>ACCIDENTES:', NUM_LUMINOSIDAD)) %>%
layout(title = "ACCIDENTES LUMINOSIDAD 2008-2015")
#Histograma climatologia
p3=plot_ly(data = acc_anio_clima, x = ~CLIMA, y = ~NUM_CLIMA, color = ~ANIO,
text = ~paste("ANIO: ",ANIO, '<br>ACCIDENTES:', NUM_CLIMA)) %>%
layout(title = "ACCIDENTES POR CLIMATOLOGIA 2008-2015")
p1
## No trace type specified:
## Based on info supplied, a 'bar' trace seems appropriate.
## Read more about this trace type -> https://plot.ly/r/reference/#bar
p2
## No trace type specified:
## Based on info supplied, a 'bar' trace seems appropriate.
## Read more about this trace type -> https://plot.ly/r/reference/#bar
p3
## No trace type specified:
## Based on info supplied, a 'bar' trace seems appropriate.
## Read more about this trace type -> https://plot.ly/r/reference/#bar
Voy a intentar identificar que factores influyen mas en que haya muerte o no en un accidente. Para ello, utilizo un arbol de clasificacion.
En primer lugar identifico del data set de accidentes, que registro han tenido muertes, creando una nueva columna TARGET que contendra valores “S” o “N”.
El resto de variables que intervendran en el arbol, las convierto a factores.
Teniendo el cuenta las variables:
Se obtiene como resultado que la tipologia de accidente del cluster 12, tiene la mayor probabilidad de muerte: TIPO DE VIDA–>VIAS INTERURBANAS FACTORES_ATMOSFERICOS–>NIEBLA_INTENSA SUPERFICIE_CALZADA–>GRAVILLA SUELTA, OTRO TIPO, SECA_Y_LIMPIA, UMBRIA
#Creo la varible objetivo, en este caso identifica que accidentes han tenido muertes
accidentes$target <- as.numeric(accidentes$TOT_MUERTOS > 0)
accidentes$target[accidentes$TOT_MUERTOS > 0]="S"
accidentes$target[accidentes$TOT_MUERTOS == 0]="N"
accidentes$target <- as.factor(accidentes$target)
#Convierto en factores las variables que voy a utilizar en el arbol
accidentes$ZONA <- as.factor(accidentes$ZONA)
accidentes$ZONA_AGRUPADA <- as.factor(accidentes$ZONA_AGRUPADA)
accidentes$RED_CARRETERA <- as.factor(accidentes$RED_CARRETERA)
accidentes$TIPO_VIA <- as.factor(accidentes$TIPO_VIA)
accidentes$SUPERFICIE_CALZADA <- as.factor(accidentes$SUPERFICIE_CALZADA)
accidentes$LUMINOSIDAD <- as.factor(accidentes$LUMINOSIDAD)
accidentes$FACTORES_ATMOSFERICOS <- as.factor(accidentes$FACTORES_ATMOSFERICOS)
accidentes$VISIBILIDAD_RESTRINGIDA <- as.factor(accidentes$VISIBILIDAD_RESTRINGIDA)
#Genero el arbol
tree <- ctree(target ~
#ZONA+
ZONA_AGRUPADA +
#RED_CARRETERA +
#TIPO_VIA +
SUPERFICIE_CALZADA +
#LUMINOSIDAD
FACTORES_ATMOSFERICOS
#VISIBILIDAD_RESTRINGIDA
,
data = accidentes
)
#ploteado simple
#plot(tree,gp = gpar(fontsize = 4),abbreviate = TRUE)
#plot(as.simpleparty(tree),gp = gpar(fontsize = 4))
El resultado es un arbol con 11 nodos internos y 12 terminales
#Resultado del arbol
tree
##
## Model formula:
## target ~ ZONA_AGRUPADA + SUPERFICIE_CALZADA + FACTORES_ATMOSFERICOS
##
## Fitted party:
## [1] root
## | [2] ZONA_AGRUPADA in VIAS INTERURBANAS
## | | [3] FACTORES_ATMOSFERICOS in BUEN_TIEMPO, GRANIZANDO, LLOVIZNANDO, LLUVIA_FUERTE, NEVANDO
## | | | [4] SUPERFICIE_CALZADA in ACEITE, BARRILLO, HELADA, MOJADA, NEVADA
## | | | | [5] FACTORES_ATMOSFERICOS in BUEN_TIEMPO: N (n = 10152, err = 2.1%)
## | | | | [6] FACTORES_ATMOSFERICOS in GRANIZANDO, LLOVIZNANDO, LLUVIA_FUERTE, NEVANDO: N (n = 38680, err = 2.6%)
## | | | [7] SUPERFICIE_CALZADA in GRAVILLA SUELTA, OTRO TIPO, SECA_Y_LIMPIA, UMBRIA
## | | | | [8] SUPERFICIE_CALZADA in OTRO TIPO, UMBRIA: N (n = 3459, err = 5.1%)
## | | | | [9] SUPERFICIE_CALZADA in GRAVILLA SUELTA, SECA_Y_LIMPIA: N (n = 235019, err = 3.6%)
## | | [10] FACTORES_ATMOSFERICOS in NIEBLA_INTENSA, NIEBLA_LIGERA, OTRO, VIENTO FUERTE
## | | | [11] FACTORES_ATMOSFERICOS in NIEBLA_INTENSA
## | | | | [12] SUPERFICIE_CALZADA in GRAVILLA SUELTA, OTRO TIPO, SECA_Y_LIMPIA, UMBRIA: N (n = 495, err = 11.9%)
## | | | | [13] SUPERFICIE_CALZADA in BARRILLO, HELADA, MOJADA, NEVADA: N (n = 636, err = 5.3%)
## | | | [14] FACTORES_ATMOSFERICOS in NIEBLA_LIGERA, OTRO, VIENTO FUERTE: N (n = 13658, err = 4.8%)
## | [15] ZONA_AGRUPADA in VIAS URBANAS
## | | [16] FACTORES_ATMOSFERICOS in BUEN_TIEMPO, LLUVIA_FUERTE, NIEBLA_INTENSA, NIEBLA_LIGERA, VIENTO FUERTE
## | | | [17] FACTORES_ATMOSFERICOS in BUEN_TIEMPO
## | | | | [18] SUPERFICIE_CALZADA in ACEITE, BARRILLO, GRAVILLA SUELTA, HELADA, NEVADA, OTRO TIPO, SECA_Y_LIMPIA: N (n = 351640, err = 0.7%)
## | | | | [19] SUPERFICIE_CALZADA in MOJADA, UMBRIA: N (n = 7641, err = 1.0%)
## | | | [20] FACTORES_ATMOSFERICOS in LLUVIA_FUERTE, NIEBLA_INTENSA, NIEBLA_LIGERA, VIENTO FUERTE: N (n = 5500, err = 1.1%)
## | | [21] FACTORES_ATMOSFERICOS in GRANIZANDO, LLOVIZNANDO, NEVANDO, OTRO
## | | | [22] SUPERFICIE_CALZADA in ACEITE, GRAVILLA SUELTA, HELADA, MOJADA, NEVADA, SECA_Y_LIMPIA: N (n = 44570, err = 0.5%)
## | | | [23] SUPERFICIE_CALZADA in BARRILLO, OTRO TIPO, UMBRIA: N (n = 452, err = 2.2%)
##
## Number of inner nodes: 11
## Number of terminal nodes: 12
#Para ver los resultado con mas claridad, calculo la probabilida de tener muerte o no, dependiendo de las variables que he incluido en el arbol
#Calculo la probabilidad
prob=aggregate(predict(tree, type = "prob"),
list(predict(tree, type = "node")), FUN = mean)
Ahora se ve mejor la probalidad de “S” o “N” en cada nodo terminal
prob[order(prob$S,decreasing = TRUE),]
## Group.1 N S
## 5 12 0.8808081 0.119191919
## 6 13 0.9465409 0.053459119
## 3 8 0.9494073 0.050592657
## 7 14 0.9516035 0.048396544
## 4 9 0.9636795 0.036320468
## 2 6 0.9736815 0.026318511
## 12 23 0.9778761 0.022123894
## 1 5 0.9788219 0.021178093
## 10 20 0.9885455 0.011454545
## 9 19 0.9900537 0.009946342
## 8 18 0.9925719 0.007428051
## 11 22 0.9946376 0.005362351
#Modifico los nodos del arbol con la probabilidad calculada
tree_node <- as.list(tree$node)
for(i in 1:nrow(prob)) {
tree_node[[prob[i,1]]]$info$prediction <- paste(
format(names(prob)[-1]),
format(round(prob[i, -1], digits = 3), nsmall = 3)
)
}
tree$node <- as.partynode(tree_node)
#Ploteo el arbol
plot(tree,
terminal_panel = node_terminal,
gp = gpar(fontsize = 6),
tp_args = list(FUN = function(node) c("PROB_MUERTE", node$prediction))
)
Si ejecuto el arbol con todas las variables y ordeno descendentemente por probabilidad de muerte, se ve que el grupo 105 tiene una probabilida de mas del 40%.
FACTORES_ATMOSFERICOS --> LLOVIZNANDO, LLUVIA_FUERTE, NIEBLA_INTENSA, NIEBLA_LIGERA, VIENTO FUERTE
RED_CARRETERA --> OTRAS_TITULARIDADES, TITULARIDAD_PROVINCIAL
VISIBILIDAD_RESTRINGIDA --> 5:'DESLUMBRAMIENTO', 7:'OTRA_CAUSA'
LUMINOSIDAD --> CREPUSCULO, NOCHE_ILUMINACION_INSUFICIENTE, NOCHE: SIN ILUMINACION
SUPERFICIE_CALZADA --> SECA_Y_LIMPIA, UMBRIA
Seguida de 5 cluster mas con mas de un 20%.
Group.1 N S 51 105 0.5714286 0.4285714286 76 153 0.6666667 0.3333333333 56 112 0.7454545 0.2545454545 46 94 0.7567568 0.2432432432 6 19 0.7777778 0.2222222222 52 106 0.7877358 0.2122641509
#Genero el arbol con todas las variables
tree <- ctree(target ~
#ZONA+
ZONA_AGRUPADA +
RED_CARRETERA +
TIPO_VIA +
SUPERFICIE_CALZADA +
LUMINOSIDAD +
FACTORES_ATMOSFERICOS +
VISIBILIDAD_RESTRINGIDA
,
data = accidentes
)
#ploteado simple
#plot(tree,gp = gpar(fontsize = 4),abbreviate = TRUE)
#plot(as.simpleparty(tree),gp = gpar(fontsize = 4))
#Resultado del arbol
tree
##
## Model formula:
## target ~ ZONA_AGRUPADA + RED_CARRETERA + TIPO_VIA + SUPERFICIE_CALZADA +
## LUMINOSIDAD + FACTORES_ATMOSFERICOS + VISIBILIDAD_RESTRINGIDA
##
## Fitted party:
## [1] root
## | [2] RED_CARRETERA in OTRAS_TITULARIDADES, TITULARIDAD_AUTONOMICA, TITULARIDAD_ESTATAL, TITULARIDAD_PROVINCIAL
## | | [3] VISIBILIDAD_RESTRINGIDA in 0, 1, 8
## | | | [4] LUMINOSIDAD in CREPUSCULO, NOCHE_ILUMINACION_SUFICIENTE, PLENO_DIA
## | | | | [5] TIPO_VIA in AUTOPISTA, AUTOVIA, CAMINO_VECINAL, DE_SERVICIO, PARA_AUTOMOVILES, RAMAL_DE_ENLACE
## | | | | | [6] TIPO_VIA in AUTOPISTA, AUTOVIA, DE_SERVICIO, RAMAL_DE_ENLACE
## | | | | | | [7] FACTORES_ATMOSFERICOS in BUEN_TIEMPO, GRANIZANDO, NIEBLA_LIGERA, OTRO, VIENTO FUERTE
## | | | | | | | [8] LUMINOSIDAD in CREPUSCULO, NOCHE_ILUMINACION_SUFICIENTE: N (n = 11265, err = 3.4%)
## | | | | | | | [9] LUMINOSIDAD in PLENO_DIA
## | | | | | | | | [10] VISIBILIDAD_RESTRINGIDA in 0, 8: N (n = 16788, err = 2.7%)
## | | | | | | | | [11] VISIBILIDAD_RESTRINGIDA in 1
## | | | | | | | | | [12] RED_CARRETERA in OTRAS_TITULARIDADES, TITULARIDAD_PROVINCIAL: N (n = 6097, err = 1.2%)
## | | | | | | | | | [13] RED_CARRETERA in TITULARIDAD_AUTONOMICA, TITULARIDAD_ESTATAL
## | | | | | | | | | | [14] TIPO_VIA in AUTOPISTA, AUTOVIA, DE_SERVICIO
## | | | | | | | | | | | [15] TIPO_VIA in AUTOPISTA, DE_SERVICIO
## | | | | | | | | | | | | [16] TIPO_VIA in AUTOPISTA: N (n = 4603, err = 2.2%)
## | | | | | | | | | | | | [17] TIPO_VIA in DE_SERVICIO
## | | | | | | | | | | | | | [18] FACTORES_ATMOSFERICOS in BUEN_TIEMPO: N (n = 45, err = 6.7%)
## | | | | | | | | | | | | | [19] FACTORES_ATMOSFERICOS in OTRO, VIENTO FUERTE: N (n = 9, err = 22.2%)
## | | | | | | | | | | | [20] TIPO_VIA in AUTOVIA: N (n = 17884, err = 2.1%)
## | | | | | | | | | | [21] TIPO_VIA in RAMAL_DE_ENLACE: N (n = 763, err = 0.3%)
## | | | | | | [22] FACTORES_ATMOSFERICOS in LLOVIZNANDO, LLUVIA_FUERTE, NEVANDO, NIEBLA_INTENSA
## | | | | | | | [23] VISIBILIDAD_RESTRINGIDA in 0, 1: N (n = 5575, err = 0.8%)
## | | | | | | | [24] VISIBILIDAD_RESTRINGIDA in 8: N (n = 2914, err = 1.8%)
## | | | | | [25] TIPO_VIA in CAMINO_VECINAL, PARA_AUTOMOVILES
## | | | | | | [26] RED_CARRETERA in OTRAS_TITULARIDADES, TITULARIDAD_PROVINCIAL
## | | | | | | | [27] VISIBILIDAD_RESTRINGIDA in 8
## | | | | | | | | [28] TIPO_VIA in CAMINO_VECINAL: N (n = 658, err = 5.8%)
## | | | | | | | | [29] TIPO_VIA in PARA_AUTOMOVILES: N (n = 122, err = 0.0%)
## | | | | | | | [30] VISIBILIDAD_RESTRINGIDA in 1
## | | | | | | | | [31] FACTORES_ATMOSFERICOS in BUEN_TIEMPO, NEVANDO, NIEBLA_INTENSA, OTRO, VIENTO FUERTE
## | | | | | | | | | [32] FACTORES_ATMOSFERICOS in BUEN_TIEMPO: N (n = 18377, err = 2.3%)
## | | | | | | | | | [33] FACTORES_ATMOSFERICOS in NEVANDO, NIEBLA_INTENSA, OTRO, VIENTO FUERTE: N (n = 1360, err = 3.0%)
## | | | | | | | | [34] FACTORES_ATMOSFERICOS in GRANIZANDO, LLOVIZNANDO, LLUVIA_FUERTE, NIEBLA_LIGERA: N (n = 2113, err = 1.2%)
## | | | | | | [35] RED_CARRETERA in TITULARIDAD_AUTONOMICA, TITULARIDAD_ESTATAL
## | | | | | | | [36] SUPERFICIE_CALZADA in GRAVILLA SUELTA, SECA_Y_LIMPIA
## | | | | | | | | [37] RED_CARRETERA in TITULARIDAD_AUTONOMICA
## | | | | | | | | | [38] FACTORES_ATMOSFERICOS in BUEN_TIEMPO, GRANIZANDO, NIEBLA_INTENSA, NIEBLA_LIGERA, OTRO: N (n = 28118, err = 3.6%)
## | | | | | | | | | [39] FACTORES_ATMOSFERICOS in LLOVIZNANDO, LLUVIA_FUERTE, NEVANDO, VIENTO FUERTE
## | | | | | | | | | | [40] FACTORES_ATMOSFERICOS in LLUVIA_FUERTE, VIENTO FUERTE: N (n = 186, err = 5.9%)
## | | | | | | | | | | [41] FACTORES_ATMOSFERICOS in LLOVIZNANDO, NEVANDO: N (n = 138, err = 8.0%)
## | | | | | | | | [42] RED_CARRETERA in TITULARIDAD_ESTATAL: N (n = 13000, err = 4.3%)
## | | | | | | | [43] SUPERFICIE_CALZADA in BARRILLO, HELADA, MOJADA, NEVADA, OTRO TIPO, UMBRIA
## | | | | | | | | [44] LUMINOSIDAD in CREPUSCULO, NOCHE_ILUMINACION_SUFICIENTE: N (n = 1738, err = 3.4%)
## | | | | | | | | [45] LUMINOSIDAD in PLENO_DIA
## | | | | | | | | | [46] FACTORES_ATMOSFERICOS in BUEN_TIEMPO, LLOVIZNANDO, LLUVIA_FUERTE, NEVANDO, NIEBLA_INTENSA, NIEBLA_LIGERA: N (n = 5073, err = 1.6%)
## | | | | | | | | | [47] FACTORES_ATMOSFERICOS in GRANIZANDO, OTRO, VIENTO FUERTE: N (n = 839, err = 3.5%)
## | | | | [48] TIPO_VIA in CONVENCIONAL, CONVENCIONAL_CARRIL_LENTO, OTRA
## | | | | | [49] RED_CARRETERA in OTRAS_TITULARIDADES, TITULARIDAD_AUTONOMICA, TITULARIDAD_PROVINCIAL
## | | | | | | [50] ZONA_AGRUPADA in VIAS INTERURBANAS
## | | | | | | | [51] RED_CARRETERA in OTRAS_TITULARIDADES, TITULARIDAD_AUTONOMICA
## | | | | | | | | [52] FACTORES_ATMOSFERICOS in BUEN_TIEMPO, LLOVIZNANDO, LLUVIA_FUERTE, NEVANDO, NIEBLA_LIGERA
## | | | | | | | | | [53] LUMINOSIDAD in CREPUSCULO: N (n = 1238, err = 6.1%)
## | | | | | | | | | [54] LUMINOSIDAD in NOCHE_ILUMINACION_SUFICIENTE, PLENO_DIA: N (n = 20725, err = 4.0%)
## | | | | | | | | [55] FACTORES_ATMOSFERICOS in GRANIZANDO, NIEBLA_INTENSA, OTRO, VIENTO FUERTE: N (n = 588, err = 8.2%)
## | | | | | | | [56] RED_CARRETERA in TITULARIDAD_PROVINCIAL: N (n = 13111, err = 3.0%)
## | | | | | | [57] ZONA_AGRUPADA in VIAS URBANAS
## | | | | | | | [58] VISIBILIDAD_RESTRINGIDA in 0, 1: N (n = 1488, err = 5.1%)
## | | | | | | | [59] VISIBILIDAD_RESTRINGIDA in 8: N (n = 716, err = 9.4%)
## | | | | | [60] RED_CARRETERA in TITULARIDAD_ESTATAL
## | | | | | | [61] LUMINOSIDAD in CREPUSCULO: N (n = 591, err = 9.3%)
## | | | | | | [62] LUMINOSIDAD in NOCHE_ILUMINACION_SUFICIENTE, PLENO_DIA: N (n = 10495, err = 6.0%)
## | | | [63] LUMINOSIDAD in NOCHE_ILUMINACION_INSUFICIENTE, NOCHE: SIN ILUMINACION
## | | | | [64] SUPERFICIE_CALZADA in ACEITE, HELADA, MOJADA, NEVADA
## | | | | | [65] LUMINOSIDAD in NOCHE: SIN ILUMINACION
## | | | | | | [66] FACTORES_ATMOSFERICOS in BUEN_TIEMPO, GRANIZANDO, LLOVIZNANDO, LLUVIA_FUERTE, NIEBLA_LIGERA, VIENTO FUERTE: N (n = 1638, err = 4.3%)
## | | | | | | [67] FACTORES_ATMOSFERICOS in NEVANDO, NIEBLA_INTENSA, OTRO: N (n = 206, err = 10.7%)
## | | | | | [68] LUMINOSIDAD in NOCHE_ILUMINACION_INSUFICIENTE: N (n = 4548, err = 3.1%)
## | | | | [69] SUPERFICIE_CALZADA in BARRILLO, GRAVILLA SUELTA, OTRO TIPO, SECA_Y_LIMPIA, UMBRIA
## | | | | | [70] LUMINOSIDAD in NOCHE_ILUMINACION_INSUFICIENTE
## | | | | | | [71] RED_CARRETERA in OTRAS_TITULARIDADES, TITULARIDAD_AUTONOMICA, TITULARIDAD_ESTATAL: N (n = 15441, err = 6.4%)
## | | | | | | [72] RED_CARRETERA in TITULARIDAD_PROVINCIAL: N (n = 4215, err = 4.9%)
## | | | | | [73] LUMINOSIDAD in NOCHE: SIN ILUMINACION
## | | | | | | [74] RED_CARRETERA in OTRAS_TITULARIDADES, TITULARIDAD_AUTONOMICA, TITULARIDAD_ESTATAL: N (n = 7416, err = 8.5%)
## | | | | | | [75] RED_CARRETERA in TITULARIDAD_PROVINCIAL: N (n = 2107, err = 6.4%)
## | | [76] VISIBILIDAD_RESTRINGIDA in 2, 3, 4, 5, 6, 7
## | | | [77] SUPERFICIE_CALZADA in ACEITE, BARRILLO, GRAVILLA SUELTA, HELADA, MOJADA, NEVADA, OTRO TIPO
## | | | | [78] RED_CARRETERA in OTRAS_TITULARIDADES, TITULARIDAD_PROVINCIAL
## | | | | | [79] TIPO_VIA in AUTOPISTA, AUTOVIA, RAMAL_DE_ENLACE: N (n = 1044, err = 0.3%)
## | | | | | [80] TIPO_VIA in CAMINO_VECINAL, CONVENCIONAL, CONVENCIONAL_CARRIL_LENTO, DE_SERVICIO, OTRA, PARA_AUTOMOVILES
## | | | | | | [81] LUMINOSIDAD in CREPUSCULO, NOCHE_ILUMINACION_INSUFICIENTE, NOCHE: SIN ILUMINACION
## | | | | | | | [82] RED_CARRETERA in OTRAS_TITULARIDADES: N (n = 85, err = 15.3%)
## | | | | | | | [83] RED_CARRETERA in TITULARIDAD_PROVINCIAL: N (n = 791, err = 5.6%)
## | | | | | | [84] LUMINOSIDAD in NOCHE_ILUMINACION_SUFICIENTE, PLENO_DIA
## | | | | | | | [85] SUPERFICIE_CALZADA in ACEITE, BARRILLO, GRAVILLA SUELTA, HELADA, MOJADA, NEVADA: N (n = 2287, err = 3.0%)
## | | | | | | | [86] SUPERFICIE_CALZADA in OTRO TIPO: N (n = 44, err = 15.9%)
## | | | | [87] RED_CARRETERA in TITULARIDAD_AUTONOMICA, TITULARIDAD_ESTATAL
## | | | | | [88] TIPO_VIA in AUTOPISTA, AUTOVIA, CONVENCIONAL_CARRIL_LENTO, DE_SERVICIO
## | | | | | | [89] LUMINOSIDAD in CREPUSCULO, NOCHE_ILUMINACION_SUFICIENTE, PLENO_DIA: N (n = 1755, err = 4.5%)
## | | | | | | [90] LUMINOSIDAD in NOCHE_ILUMINACION_INSUFICIENTE, NOCHE: SIN ILUMINACION: N (n = 491, err = 9.0%)
## | | | | | [91] TIPO_VIA in CAMINO_VECINAL, CONVENCIONAL, OTRA, PARA_AUTOMOVILES, RAMAL_DE_ENLACE
## | | | | | | [92] RED_CARRETERA in TITULARIDAD_ESTATAL: N (n = 1614, err = 10.7%)
## | | | | | | [93] RED_CARRETERA in TITULARIDAD_AUTONOMICA
## | | | | | | | [94] TIPO_VIA in CAMINO_VECINAL, OTRA: N (n = 37, err = 24.3%)
## | | | | | | | [95] TIPO_VIA in CONVENCIONAL, PARA_AUTOMOVILES, RAMAL_DE_ENLACE
## | | | | | | | | [96] LUMINOSIDAD in CREPUSCULO, NOCHE_ILUMINACION_INSUFICIENTE, NOCHE: SIN ILUMINACION: N (n = 1007, err = 9.4%)
## | | | | | | | | [97] LUMINOSIDAD in NOCHE_ILUMINACION_SUFICIENTE, PLENO_DIA: N (n = 2375, err = 5.7%)
## | | | [98] SUPERFICIE_CALZADA in SECA_Y_LIMPIA, UMBRIA
## | | | | [99] LUMINOSIDAD in CREPUSCULO, NOCHE_ILUMINACION_INSUFICIENTE, NOCHE: SIN ILUMINACION
## | | | | | [100] VISIBILIDAD_RESTRINGIDA in 5, 7
## | | | | | | [101] RED_CARRETERA in OTRAS_TITULARIDADES, TITULARIDAD_PROVINCIAL
## | | | | | | | [102] FACTORES_ATMOSFERICOS in BUEN_TIEMPO, OTRO
## | | | | | | | | [103] VISIBILIDAD_RESTRINGIDA in 5: N (n = 80, err = 17.5%)
## | | | | | | | | [104] VISIBILIDAD_RESTRINGIDA in 7: N (n = 138, err = 5.8%)
## | | | | | | | [105] FACTORES_ATMOSFERICOS in LLOVIZNANDO, LLUVIA_FUERTE, NIEBLA_INTENSA, NIEBLA_LIGERA, VIENTO FUERTE: N (n = 7, err = 42.9%)
## | | | | | | [106] RED_CARRETERA in TITULARIDAD_AUTONOMICA, TITULARIDAD_ESTATAL: N (n = 636, err = 21.2%)
## | | | | | [107] VISIBILIDAD_RESTRINGIDA in 2, 3, 4, 6: N (n = 3161, err = 12.8%)
## | | | | [108] LUMINOSIDAD in NOCHE_ILUMINACION_SUFICIENTE, PLENO_DIA
## | | | | | [109] RED_CARRETERA in OTRAS_TITULARIDADES, TITULARIDAD_PROVINCIAL: N (n = 4603, err = 7.1%)
## | | | | | [110] RED_CARRETERA in TITULARIDAD_AUTONOMICA, TITULARIDAD_ESTATAL
## | | | | | | [111] FACTORES_ATMOSFERICOS in BUEN_TIEMPO, GRANIZANDO, LLOVIZNANDO, LLUVIA_FUERTE, NEVANDO, NIEBLA_INTENSA, NIEBLA_LIGERA, VIENTO FUERTE: N (n = 7245, err = 9.7%)
## | | | | | | [112] FACTORES_ATMOSFERICOS in OTRO: N (n = 110, err = 25.5%)
## | [113] RED_CARRETERA in TITULARIDAD_MUNICIPAL
## | | [114] VISIBILIDAD_RESTRINGIDA in 0, 1
## | | | [115] TIPO_VIA in AUTOPISTA, AUTOVIA, CONVENCIONAL, OTRA, PARA_AUTOMOVILES, RAMAL_DE_ENLACE
## | | | | [116] VISIBILIDAD_RESTRINGIDA in 0
## | | | | | [117] FACTORES_ATMOSFERICOS in BUEN_TIEMPO, NIEBLA_INTENSA: N (n = 78219, err = 0.2%)
## | | | | | [118] FACTORES_ATMOSFERICOS in GRANIZANDO, LLOVIZNANDO, LLUVIA_FUERTE, NEVANDO, NIEBLA_LIGERA, OTRO, VIENTO FUERTE
## | | | | | | [119] SUPERFICIE_CALZADA in ACEITE, GRAVILLA SUELTA, MOJADA, OTRO TIPO, SECA_Y_LIMPIA
## | | | | | | | [120] LUMINOSIDAD in CREPUSCULO, NOCHE_ILUMINACION_INSUFICIENTE, NOCHE_ILUMINACION_SUFICIENTE: N (n = 5023, err = 0.3%)
## | | | | | | | [121] LUMINOSIDAD in NOCHE: SIN ILUMINACION, PLENO_DIA: N (n = 10374, err = 0.0%)
## | | | | | | [122] SUPERFICIE_CALZADA in BARRILLO, HELADA, NEVADA: N (n = 245, err = 0.8%)
## | | | | [123] VISIBILIDAD_RESTRINGIDA in 1
## | | | | | [124] LUMINOSIDAD in CREPUSCULO, NOCHE_ILUMINACION_INSUFICIENTE, NOCHE_ILUMINACION_SUFICIENTE
## | | | | | | [125] TIPO_VIA in AUTOPISTA, AUTOVIA, PARA_AUTOMOVILES
## | | | | | | | [126] FACTORES_ATMOSFERICOS in BUEN_TIEMPO, NIEBLA_LIGERA, OTRO: N (n = 6701, err = 0.4%)
## | | | | | | | [127] FACTORES_ATMOSFERICOS in GRANIZANDO, LLOVIZNANDO, LLUVIA_FUERTE, NEVANDO, NIEBLA_INTENSA, VIENTO FUERTE: N (n = 1442, err = 0.0%)
## | | | | | | [128] TIPO_VIA in CONVENCIONAL, OTRA, RAMAL_DE_ENLACE
## | | | | | | | [129] LUMINOSIDAD in CREPUSCULO, NOCHE_ILUMINACION_SUFICIENTE: N (n = 68161, err = 0.8%)
## | | | | | | | [130] LUMINOSIDAD in NOCHE_ILUMINACION_INSUFICIENTE: N (n = 1134, err = 2.6%)
## | | | | | [131] LUMINOSIDAD in NOCHE: SIN ILUMINACION, PLENO_DIA
## | | | | | | [132] SUPERFICIE_CALZADA in ACEITE, BARRILLO, HELADA, MOJADA, NEVADA
## | | | | | | | [133] FACTORES_ATMOSFERICOS in BUEN_TIEMPO, GRANIZANDO, LLOVIZNANDO, LLUVIA_FUERTE, NIEBLA_INTENSA, VIENTO FUERTE: N (n = 15945, err = 0.2%)
## | | | | | | | [134] FACTORES_ATMOSFERICOS in NEVANDO, NIEBLA_LIGERA, OTRO
## | | | | | | | | [135] ZONA_AGRUPADA in VIAS INTERURBANAS: N (n = 39, err = 5.1%)
## | | | | | | | | [136] ZONA_AGRUPADA in VIAS URBANAS: N (n = 936, err = 0.7%)
## | | | | | | [137] SUPERFICIE_CALZADA in GRAVILLA SUELTA, OTRO TIPO, SECA_Y_LIMPIA, UMBRIA
## | | | | | | | [138] SUPERFICIE_CALZADA in GRAVILLA SUELTA, OTRO TIPO, UMBRIA
## | | | | | | | | [139] TIPO_VIA in AUTOPISTA, AUTOVIA, PARA_AUTOMOVILES, RAMAL_DE_ENLACE: N (n = 2729, err = 0.4%)
## | | | | | | | | [140] TIPO_VIA in CONVENCIONAL, OTRA: N (n = 53, err = 7.5%)
## | | | | | | | [141] SUPERFICIE_CALZADA in SECA_Y_LIMPIA
## | | | | | | | | [142] TIPO_VIA in AUTOPISTA, AUTOVIA, PARA_AUTOMOVILES, RAMAL_DE_ENLACE: N (n = 181090, err = 0.4%)
## | | | | | | | | [143] TIPO_VIA in CONVENCIONAL, OTRA
## | | | | | | | | | [144] FACTORES_ATMOSFERICOS in BUEN_TIEMPO, LLOVIZNANDO, NIEBLA_LIGERA, VIENTO FUERTE
## | | | | | | | | | | [145] TIPO_VIA in CONVENCIONAL: N (n = 143, err = 3.5%)
## | | | | | | | | | | [146] TIPO_VIA in OTRA: N (n = 2614, err = 1.0%)
## | | | | | | | | | [147] FACTORES_ATMOSFERICOS in NIEBLA_INTENSA, OTRO: N (n = 28, err = 10.7%)
## | | | [148] TIPO_VIA in CAMINO_VECINAL, CONVENCIONAL_CARRIL_LENTO, DE_SERVICIO
## | | | | [149] TIPO_VIA in CAMINO_VECINAL, DE_SERVICIO: N (n = 1531, err = 1.2%)
## | | | | [150] TIPO_VIA in CONVENCIONAL_CARRIL_LENTO
## | | | | | [151] SUPERFICIE_CALZADA in GRAVILLA SUELTA, UMBRIA
## | | | | | | [152] FACTORES_ATMOSFERICOS in BUEN_TIEMPO, LLOVIZNANDO, NEVANDO, OTRO: N (n = 578, err = 6.4%)
## | | | | | | [153] FACTORES_ATMOSFERICOS in LLUVIA_FUERTE, NIEBLA_LIGERA, VIENTO FUERTE: N (n = 9, err = 33.3%)
## | | | | | [154] SUPERFICIE_CALZADA in BARRILLO, HELADA, MOJADA, NEVADA, SECA_Y_LIMPIA: N (n = 2710, err = 3.4%)
## | | [155] VISIBILIDAD_RESTRINGIDA in 2, 3, 4, 5, 6, 7, 8
## | | | [156] ZONA_AGRUPADA in VIAS INTERURBANAS
## | | | | [157] SUPERFICIE_CALZADA in ACEITE, BARRILLO, MOJADA, NEVADA, SECA_Y_LIMPIA
## | | | | | [158] LUMINOSIDAD in CREPUSCULO, NOCHE_ILUMINACION_INSUFICIENTE, NOCHE: SIN ILUMINACION: N (n = 1049, err = 7.8%)
## | | | | | [159] LUMINOSIDAD in NOCHE_ILUMINACION_SUFICIENTE, PLENO_DIA
## | | | | | | [160] VISIBILIDAD_RESTRINGIDA in 2, 3, 4, 5, 6: N (n = 1356, err = 6.0%)
## | | | | | | [161] VISIBILIDAD_RESTRINGIDA in 7, 8: N (n = 2265, err = 2.8%)
## | | | | [162] SUPERFICIE_CALZADA in GRAVILLA SUELTA, HELADA, OTRO TIPO, UMBRIA: N (n = 630, err = 11.7%)
## | | | [163] ZONA_AGRUPADA in VIAS URBANAS
## | | | | [164] LUMINOSIDAD in CREPUSCULO, NOCHE_ILUMINACION_SUFICIENTE, PLENO_DIA
## | | | | | [165] VISIBILIDAD_RESTRINGIDA in 2, 3, 4, 5, 6: N (n = 6138, err = 2.6%)
## | | | | | [166] VISIBILIDAD_RESTRINGIDA in 7, 8
## | | | | | | [167] LUMINOSIDAD in CREPUSCULO, PLENO_DIA: N (n = 52856, err = 1.1%)
## | | | | | | [168] LUMINOSIDAD in NOCHE_ILUMINACION_SUFICIENTE: N (n = 16709, err = 1.8%)
## | | | | [169] LUMINOSIDAD in NOCHE_ILUMINACION_INSUFICIENTE, NOCHE: SIN ILUMINACION: N (n = 1497, err = 4.9%)
##
## Number of inner nodes: 84
## Number of terminal nodes: 85
#Para ver los resultado con mas claridad, calculo la probabilida de tener muerte o no, dependiendo de las variables
#que he incluido en el arbol
#Calculo la probabilidad
prob=aggregate(predict(tree, type = "prob"),
list(predict(tree, type = "node")), FUN = mean)
Nodo ordenado por probabilidad de muerte
prob[order(prob$S,decreasing = TRUE),]
## Group.1 N S
## 51 105 0.5714286 0.4285714286
## 76 153 0.6666667 0.3333333333
## 56 112 0.7454545 0.2545454545
## 46 94 0.7567568 0.2432432432
## 6 19 0.7777778 0.2222222222
## 52 106 0.7877358 0.2122641509
## 49 103 0.8250000 0.1750000000
## 42 86 0.8409091 0.1590909091
## 39 82 0.8470588 0.1529411765
## 53 107 0.8721923 0.1278076558
## 81 162 0.8825397 0.1174603175
## 73 147 0.8928571 0.1071428571
## 32 67 0.8932039 0.1067961165
## 45 92 0.8934325 0.1065675341
## 55 111 0.9028295 0.0971704624
## 47 96 0.9056604 0.0943396226
## 28 59 0.9064246 0.0935754190
## 29 61 0.9069374 0.0930626058
## 44 90 0.9103870 0.0896130346
## 36 74 0.9149137 0.0850862999
## 25 55 0.9183673 0.0816326531
## 18 41 0.9202899 0.0797101449
## 78 158 0.9218303 0.0781696854
## 69 140 0.9245283 0.0754716981
## 54 109 0.9287421 0.0712578753
## 5 18 0.9333333 0.0666666667
## 75 152 0.9359862 0.0640138408
## 34 71 0.9363383 0.0636616799
## 37 75 0.9364025 0.0635975320
## 23 53 0.9394184 0.0605815832
## 30 62 0.9398761 0.0601238685
## 79 160 0.9402655 0.0597345133
## 17 40 0.9408602 0.0591397849
## 50 104 0.9420290 0.0579710145
## 11 28 0.9422492 0.0577507599
## 48 97 0.9427368 0.0572631579
## 40 83 0.9443742 0.0556257901
## 66 135 0.9487179 0.0512820513
## 27 58 0.9489247 0.0510752688
## 35 72 0.9508897 0.0491103203
## 85 169 0.9512358 0.0487641951
## 43 89 0.9549858 0.0450142450
## 31 66 0.9566545 0.0433455433
## 19 42 0.9573846 0.0426153846
## 24 54 0.9597105 0.0402895054
## 16 38 0.9642222 0.0357777936
## 71 145 0.9650350 0.0349650350
## 22 47 0.9654350 0.0345649583
## 20 44 0.9660529 0.0339470656
## 77 154 0.9664207 0.0335793358
## 1 8 0.9664447 0.0335552597
## 33 68 0.9694371 0.0305628848
## 26 56 0.9695675 0.0304324613
## 14 33 0.9698529 0.0301470588
## 41 85 0.9702667 0.0297332750
## 80 161 0.9721854 0.0278145695
## 2 10 0.9729569 0.0270431260
## 64 130 0.9735450 0.0264550265
## 82 165 0.9739329 0.0260671228
## 13 32 0.9766012 0.0233988137
## 4 16 0.9784923 0.0215077124
## 7 20 0.9788079 0.0211921270
## 84 168 0.9818661 0.0181339398
## 10 24 0.9824983 0.0175017159
## 21 46 0.9840331 0.0159668835
## 74 149 0.9875898 0.0124101894
## 15 34 0.9876952 0.0123047799
## 3 12 0.9878629 0.0121371166
## 83 167 0.9885538 0.0114461934
## 72 146 0.9900536 0.0099464422
## 9 23 0.9915695 0.0084304933
## 60 122 0.9918367 0.0081632653
## 63 129 0.9920336 0.0079664324
## 67 136 0.9925214 0.0074786325
## 68 139 0.9956028 0.0043972151
## 70 142 0.9957093 0.0042906842
## 61 126 0.9964184 0.0035815550
## 38 79 0.9971264 0.0028735632
## 58 120 0.9972128 0.0027871790
## 8 21 0.9973788 0.0026212320
## 57 117 0.9976732 0.0023268004
## 65 133 0.9979931 0.0020068987
## 59 121 0.9998072 0.0001927897
## 12 29 1.0000000 0.0000000000
## 62 127 1.0000000 0.0000000000
#Modifico los nodos del arbol con la probabilidad calculada
tree_node <- as.list(tree$node)
for(i in 1:nrow(prob)) {
tree_node[[prob[i,1]]]$info$prediction <- paste(
format(names(prob)[-1]),
format(round(prob[i, -1], digits = 3), nsmall = 3)
)
}
tree$node <- as.partynode(tree_node)
#Ploteo el arbol
plot(tree,
terminal_panel = node_terminal,
gp = gpar(fontsize = 6),
tp_args = list(FUN = function(node) c("PROB_MUERTE", node$prediction))
)